#ifndef _FM_WAVE_H_
#define _FM_WAVE_H_

#include "../../embeddable/math/EmbeddableMath.h"


///Will need to put more work into this class to figure out.
class FmWave
{
	private:
	double Amp_carrier;
	double freq_carrier;
	double freq_deviation;
	double freq_mod;
	public :
	FmWave(double a, double fc, double fd, double fm)
	{
		Amp_carrier=a;
		freq_carrier=fc;
		freq_deviation=fd;
		freq_mod=fm;
	}
	double get(unsigned long int time)
	{
		return Amp_carrier * Embeddable::Math::cos(
				2 * 3.14159265 * freq_carrier * time
				+ 
				(freq_deviation / freq_mod)
				* Embeddable::Math::cos(
				2 * 3.14159265 * freq_mod * time));
	}

};


#endif
